草庐IT

php - SQL 按两列分组和排序

全部标签

ruby-on-rails - 以 DESC 排序集合

'event',:collection=>@events.sort_by(&:event_at)%>此代码显示按ASC排序的集合,但我想按DESC排序此集合。我怎样才能做到这一点? 最佳答案 如http://guides.rubyonrails.org/active_record_querying.html所述@events.order(event_at::desc) 关于ruby-on-rails-以DESC排序集合,我们在StackOverflow上找到一个类似的问题:

ruby-on-rails - Ruby:如何对 Ruby 数组进行分组?

我有一个Ruby数组>list=Request.find_all_by_artist("Metallica").map(&:song)=>["NothingelseMatters","Entersandman","EnterSandman","MasterofPuppets","MasterofPuppets","MasterofPuppets"]我想要一个包含这样计数的列表:{"NothingElseMatters"=>1,"EnterSandman"=>2,"MasterofPuppets"=>3}所以理想情况下,我想要一个散列,它会给我计数并注意我如何使用EnterSandman

ruby - 如何在不使用循环的情况下按数组中的计数分组

arr=[1,2,1,3,5,2,4]如何通过排序按组值对数组进行计数?我需要以下输出:x[1]=2x[2]=2x[3]=1x[4]=1x[5]=1 最佳答案 x=arr.inject(Hash.new(0)){|h,e|h[e]+=1;h} 关于ruby-如何在不使用循环的情况下按数组中的计数分组,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/5470725/

ruby - 如何按字母顺序对字符串的字符进行排序?

对于Array,有一个漂亮的sort方法来重新排列元素的顺序。我想为字符串实现相同的结果。例如,我有一个字符串str="String",我想用一种简单的方法将它按字母顺序排序为"ginrSt"。是否有一种本地方法可以启用此功能,或者我应该包含来自Enumerable的mixin? 最佳答案 charsmethod返回字符串字符的枚举。str.chars.sort.join#=>"Sginrt"不区分大小写排序:str.chars.sort(&:casecmp).join#=>"ginrSt"

sql - ActiveRecord Arel OR 条件

如何使用逻辑OR而不是AND来组合2个不同的条件?注意:2个条件是作为rails范围生成的,不能轻易地直接更改为where("xory")之类的内容。简单的例子:admins=User.where(:kind=>:admin)authors=User.where(:kind=>:author)很容易应用AND条件(对于这种特殊情况是没有意义的):(admins.mergeauthors).to_sql#=>select...from...wherekind='admin'ANDkind='author'但是您如何生成具有2个不同Arel关系的以下查询?#=>select...from.

ruby-on-rails - 按日期(或任何其他列)对 ActiveRecord 返回的数组进行排序

如何根据created_at日期列对ActiveRecord查询返回的数组进行排序?一旦执行了查询,就会发生这种情况。请不要告诉我在查询中执行此操作,因为我需要在View中执行此操作。 最佳答案 Ruby包括开箱即用的排序支持。sorted=@records.sort_by&:created_at但是,这似乎与显示没有太大关系,可能属于Controller。 关于ruby-on-rails-按日期(或任何其他列)对ActiveRecord返回的数组进行排序,我们在StackOverflo

Ruby 按多个值排序?

我有一个哈希数组:a=[{'foo'=>0,'bar'=>1},{'foo'=>0,'bar'=>2},...]我想先按每个散列的“foo”对数组进行排序,然后按“bar”进行排序。Google告诉我这是如何完成的:a.sort_by{|h|[h['foo'],h['bar']]}但这给了我ArgumentError“Array与Array的比较失败”。这是什么意思? 最佳答案 a.sort{|a,b|[a['foo'],a['bar']][b['foo'],b['bar']]} 关于R

ruby-on-rails - Rails、Ruby,如何对数组进行排序?

在我的Rails应用程序中,我正在创建一个数组,如下所示:@messages.eachdo|message|@listmessage.id,:title=>message.title,:time_ago=>message.replies.first.created_at}end制作这个数组后,我想按time_agoASC顺序对它进行排序,这可能吗? 最佳答案 @list.sort_by{|e|e[:time_ago]}它默认为ASC,但是如果你想要DESC,你可以这样做:@list.sort_by{|e|-e[:time_ago]}

ruby - 按 Ruby 中哈希的值降序排序

我的输入哈希:h={"a"=>20,"b"=>30,"c"=>10}升序排序:h.sort{|a,b|a[1]b[1]}#=>[["c",10],["a",20],["b",30]]但是,我需要[["b",30],["a",20],["c",10]]我们怎样才能让它以相反的方式工作,是什么?什么意思? 最佳答案 您可以同时让它更干净、更清晰、更快!像这样:h.sort_by{|k,v|v}.reverse我对使用随机值对1000元素散列进行排序的3000次迭代的计时进行了基准测试,并得到了这些时间:h.sort{|x,y|-(x[1

ruby-on-rails - 如何在 RSpec 测试中打开 ActiveRecord 的 SQL 调试日志记录?

我对我的模型进行了一些RSpec测试,我想像在Rails服务器模式中看到的那样打开SQLActiveRecord日志记录。如何做到这一点?我开始我的测试RAILS_ENV=testbundleexecrspecmy/test_spec.rb谢谢 最佳答案 您可以尝试在某处的测试中将ActiveRecord记录器设置为标准输出。如果您正在使用rspec,也许在spechelper中?ActiveRecord::Base.logger=Logger.new(STDOUT) 关于ruby-on